import Vue from 'vue'

// 导入vuex
import Vuex from 'vuex'
// 安装vuex
Vue.use(Vuex)

var car=JSON.parse(localStorage.getItem('car')||'[]')
// vuex实例
var store= new Vuex.Store({
  state: {
  //  this.$store.state
  car:car
  },
  mutations:{
    // this.$store.commit('方法名称'，'按需传递唯一的参数')
    addToCar(state,goodsinfo){
      var flag=flase
      state.car.some(item=>{
        if(item.id==goodsinfo.id){
          item.count+=parseInt(goodsinfo.count)
          flag=true
          return true
        }
      })
      if(!flag){
        state.car.push(goodsinfo)
      }
      localStorage.setItem('car',JSON.stringify(state.car))
     
    },
    updateGoodsInfo(state,goodsinfo){
      state.car.some(item=>{
        if(item.id==goodsinfo.id){
          item.count=parseInt(goodsinfo, count)
          return true
        }
      })
      localStorage.setItem('car',JSON.stringify(state.car))
    },
    removeFormCar(state,id){
      state.car.some(item=>{
        if(item.id==id){
          state.car.splice(i,1)
          return true
        }
      })
      localStorage.setItem('car',JSON.stringify(state.car))
    },
    updateGoodsSelected(state,info){
      state.car.some(item=>{
        if(item.id==info.id){
          item.selected=info.selected
        }
      })
      localStorage.setItem('car',JSON.stringify(state.car))
    },
  },
  getters: {
    // this.$store.getters
    getAllCount(state){
      var c=0
      state.car.forEach(item=>{
        c+=item.count
      })
      return c
  },
  getGoodsCount(state){
    var o={}
      state.car.forEach(item=>{
        o[item.id]=item.count
      })
    return o
  },
  getGoodsSelected(state){
    var o={}
    state.car.forEach(item=>{
      o[item.id]==item.selected
    })
    return o
    },
    getGoodsCountAndAmount(state){
        var o={
          count:0,
          amount:0
        }
       state.car.forEach(item=>{
         if(item.selected){
          o.count+=item.count
          o.amount=item.price=item.count
        }
       })
       return o

    }
  }

})


//导入的路由包
import VueRouter from 'vue-router'
//安装的路由包
Vue.use(VueRouter)

// 导入时间插件
import moment from 'moment'
// 定义全局过滤器
Vue.filter('dateFormat',function(dateStr,pattern="YYYY-MM-DD HH:mm:ss"){
 return moment(dateStr).format(pattern)
})

// 导入图片插件
// import VuePreview from 'vue-preview'
// Vue.use(VuePreview)
// Vue.use(preview, {
//   mainClass: 'pswp--minimal--dark',
//   barsSize: {top: 0, bottom: 0},
//   captionEl: false,
//   fullscreenEl: false,
//   shareEl: false,
//   bgOpacity: 0.85,
//   tapToClose: true,
//   tapToToggleControls: false
// })

// 导入vue-resource
import VueResource from 'vue-resource'
//安装vue-resource
Vue.use(VueResource)
// 设置发送地址根路径
Vue.http.options.root = 'http://vue.studyit.io';
// 全局设置post发送的格式 
Vue.http.options.emulateJSON = true;

// 按需导入mint-ui组件
// import {Header,Swipe, SwipeItem,Button,Lazyload} from 'mint-ui'
// Vue.component(Header.name,Header)
// Vue.component(Swipe.name, Swipe);
// Vue.component(SwipeItem.name, SwipeItem);
// Vue.component(Button.name, Button);
// Vue.use(Lazyload);
import MintUi from 'mint-ui'
Vue.use(MintUi)
import 'mint-ui/lib/style.css'

// 导入mui样式
import './lib/mui/css/mui.min.css'

//导入mui图标样式
import './lib/mui/css/icons-extra.css'

// 导入自己的router.js模块
import router from './router.js'


import app from './App.vue'



var vm=new Vue({
  el:'#app',
  render: c=>c(app),
  router,
  store
})

